package com.design.patterns.list.command;

/**
 * 定义一个无效的命令，对其空实现。当没有具体命令时，不会触发任何操作。
 * 程序命令执行时就不用判断改命令是否为空.
 * 设计为单例模式，避免占用内存资源
 * @author Wangzhiwen
 */
public class InvalidCommand implements Command {

    private InvalidCommand() {
    }

    public static InvalidCommand getInstance(){
        return Instance.invalidCommand;
    }

    @Override
    public Object commandIdentification() {
        return "Invalid Command";
    }

    @Override
    public void execute() {

    }

    @Override
    public void undo() {

    }

    private static class Instance{
        private static final InvalidCommand invalidCommand = new InvalidCommand();
    }
}
